Encoding having peak-power reduction and error-correction capabilities in multicarrier transmission and decoding for the same

ABSTRACT

An input signal is encoded using a multicarrier code that provides a PEP reduction of 3k [dB] and a minimum distance d min ={square root}{square root over (2 k )} d, by restricting the code so as to have one or more 2 k+1 -carrier kernels in which |Δθ(2 k )−Δθ*(2 k )|≡π (for any k) holds for the phase difference Δθ(2 k ) between a set of 2 k−1  carriers and another set of 2 k−1  carriers and the phase difference Δθ*(2 k ) between a set of 2 k−1  carriers and another set of 2 k−1  carriers, where k is an integer not smaller than 1. By setting k to 1, and by further providing the condition |Δθ(2 k )−Δθ*(2 k )|=π/2 between two kinds of 4-carrier kernels one equal in number to the other, a PEP reduction of 3.7 dB and d min ={square root}{square root over (2)} d can be achieved. By extending the code length using these two kinds of 4-carrier kernels as basic units, a PEP reduction of 3k+0.7 [dB] and d min ={square root}{square root over (2 k )} d can be achieved.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application is based upon and claims the priority of Japanese Patent Application No. 10-361591, filed Dec. 18, 1998, the contents being incorporated therein by reference, and is a continuation of

TECHNICAL FIELD

[0002] The present invention relates to a method and apparatus for encoding for multicarrier transmission, and for decoding for the same.

BACKGROUND ART

[0003] In wideband wireless communications, frequency-selective, or multipath, fading is a particular problem as it degrades channel quality. Multicarrier modulation is an effective technique to combat multipath fading. In this modulation scheme, the transmission bandwidth is divided into a plurality of carriers (called subcarriers) to utilize the frequency diversity in a frequency-selective fading environment and thereby enable high-quality wireless transmission. Orthogonal Frequency Division Multiplexing (OFDM) is also included in this technique.

[0004] A main disadvantage of the multicarrier technique is that multicarrier signals inherently exhibit a high peak power (or peak-to-average power ratio). Linear amplifiers having a wide dynamic range are needed to maintain system linearity. However, linear amplifiers are not only expensive, but their power efficiency is also very low. On the other hand, using inexpensive nonlinear amplifiers involves the problem of nonlinear distortion, resulting in degradation of performances, since these amplifier are operated in their saturation regions. These problems have been regarded as a bottleneck impeding the commercial implementation of this technique.

[0005] There are two main approaches to solving these problems: (1) by restricting the signal input and (2) by restricting the signal output. The former approach, mainly employing coding technic, is performed so as not to produce signal patterns that increase peak power, and no degradation in performances occurs. Furthermore, if the minimum distance of the code can be increased, it is also possible to improve the bit-error rate—BER performance. The latter approach, such as clipping technique which clips the signal before amplification, is also an effective technique for the peak reduction. This is because the large peaks occur with very low probability. This technique however causes both the BER performance degradation and the spectral efficiency reduction. There is also a technique that normalizes the entire signal envelope level to the threshold value, but this also causes the performance degradation due to the loss of the S/N ratio. The former technique is therefore preferred for providing wideband high-quality wireless transmission.

[0006] Complementary sequence (complementary code) has the proper of both peak reduction and error correction, and is being studied for application to the multicarrier modulation scheme. This code can be applied to M-ary phase shift keying (MPSK) modulation. This code achieves the coding rate R=(log₂N+1)/N, the minimum distance d_(min)={square root}{square root over (N/2)} d, and the peak power P_(pep)=2/N P(N) in the case of N carriers, where d is the minimum distance between signal points, and P(N) (=N²) is the peak power of N carriers without coding. For example, in the case of four carriers, R=¾, dmin²=2d², and P_(pep)=P(4)/2, while in the case of eight carriers, R=½, dmin²=4d², and P_(pep)=P(8)/2. Accordingly, since the coding rate of complementary code decreases as the number of carriers increases, degradation in transmission efficiency is unavoidable even if the improvement of the error-correction capability is considered. It is of course possible to operate the system as a four-carrier system by dividing the eight carries into two four carriers, but if this technique is used, the coding rate of R>¾ is not available.

[0007] On the other hand, N carriers are represented by M^(N) signal patterns (M is the number of modulated signal points). It is well known to reduce peak power by measuring the peak envelope power (PEP) levels of all signal patterns, ranking them in the order of envelope level, and encoding using only the patterns in the lower half of the ranking. This means that the peak power can be reduced by adding only one redundant bit. Moreover, the reduction effect, ΔP_(PEP) (10 log (P(N)/P_(pep))[dB]), achieved by this one-bit redundancy increases as N is increased. Therefore, increasing N should, in effect, lead to an increase in coding rate. However, in the above-described complementary code, the coding rate decreases with increasing N; therefore, it cannot fully meet this phenomenon. It should also be noted that, with the technique that uses the patterns in the lower half of the PEP ranking, the error-correction capability cannot be obtained. Furthermore, since there is no logical between the signal input and the code assigned to it, logic circuits cannot be used, which leaves no other choice but to use a mapping memory such as a ROM. Using a mapping memory becomes unrealistic when the number of carriers increases.

DISCLOSURE OF THE INVENTION

[0008] In view of the above circumstances, it is an object of the present invention to achieve high-efficiency transmission by providing a code whose coding rate increases with increasing N, while having the property of both PEP reduction and error correction.

[0009] According to the present invention, it is provided a coding method for multicarrier signal comprising the steps of: determining, based on an input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of a difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1; and generating a code corresponding to the signal input by assigning the plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which the second phases are assigned from 2^(k−1) carrier frequencies to which the first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which the fourth phases are assigned from 2^(k−1). carrier frequencies to which the third phases are assigned, carrier frequencies to which the third phases are assigned having the same carrier allocation as those of the first phases.

[0010] According to the present invention, it is also provided a decoding method for the above-mentioned signal comprising the steps of: determining, based on each input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of a difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1; generating a plurality of codes corresponding to the signal input by assigning the plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which the second phases are assigned from 2^(k−1) carrier frequencies to which the first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which the fourth phases are assigned from 2^(k−1) carrier frequencies to which the third phases are assigned, carrier frequencies to which the third phases are assigned having the same carrier allocation as those of the first phases; calculating a code distance between each of the plurality of codes and a received code; and decoding the received code by determining an input signal that provides a code whose code distance to the received code is the smallest.

[0011] According to the present invention, it is also provided an encoder for multicarrier signals comprising: a subset selecting unit for determining, based on an input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1, and for assigning the plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which the second phases are assigned from 2^(k−1) carrier frequencies to which the first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which the fourth phases are assigned from 2^(k−1) carrier frequencies to which the third phases are assigned, carrier frequencies to which the third phases are assigned having the same carrier allocation as those of the first phases; and a subset mapping unit for mapping the phases assigned by the subset selecting unit to quadrature signals.

[0012] According to the present invention, it is also provided a decoder for multicarrier signals comprising: an encoding unit both for determining, based on each input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ* (2^(k))|, be equal to a given value, where k is an integer not smaller than 1, and for generating a plurality of codes corresponding to the signal input by assigning the plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that the difference of 2^(k−1) carrier frequencies to which the second phases are assigned from 2^(k−1) carrier frequencies to which the first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which the fourth phases are assigned from 2^(k−1) carrier frequencies to which the third phases are assigned, carrier frequencies to which the third phases are assigned having the same carrier allocation as those of the first phases; a code distance calculating unit for calculating a code distance between each of the plurality of codes and a received code; and a smallest-distance code selecting unit for decoding the received code by determining an input signal that provides a code whose code distance to the received code is the smallest.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013]FIG. 1 is a diagram showing 16 possible signal point patterns that can be given to two carriers in the case of QPSK;

[0014]FIG. 2 is a diagram for explaining four carriers with which a PEP reduction effect of 3 dB can be obtained;

[0015]FIG. 3 is a diagram for explaining how 4-carrier kernels are assigned on the frequency axis;

[0016]FIG. 4 is a diagram for explaining the reordering of two 4-carrier kernels on the frequency axis;

[0017]FIG. 5 is a diagram for explaining an extension from a 4-carrier kernel to an 8-carrier kernel;

[0018]FIG. 6 is a graph showing the relationship between phase difference Δφ and PEP reduction amount;

[0019]FIG. 7 is a diagram for explaining how the code length is extended;

[0020]FIG. 8 is a diagram for explaining a κ=4 code that provides a PEP reduction effect of 3.7 dB;

[0021]FIG. 9 is a diagram for explaining how the code length is extended using extended subsets;

[0022]FIG. 10 is a diagram showing the classifications of groups when k=1;

[0023]FIG. 11 is a diagram showing the classifications of groups when k=2;

[0024]FIG. 12 is a diagram showing the classifications of groups when k=3;

[0025]FIG. 13 is a diagram showing the classifications of groups when k=4;

[0026]FIG. 14 is a graph showing the relationship between the number of carriers and the encoding rate;

[0027]FIG. 15 is a graph showing the relationship between the number of carriers and the encoding rate;

[0028]FIG. 16 is a block diagram showing one example of an encoder according to one embodiment of the present invention;

[0029]FIG. 17 is a block diagram showing a modification of the encoder of FIG. 16;

[0030]FIG. 18 is a block diagram showing a more generalized version of the encoder of FIG. 16;

[0031]FIG. 19 is a block diagram showing a more generalized version of the encoder of FIG. 17;

[0032]FIG. 20 is a block diagram showing the configuration of a decoder according to one embodiment of the present invention;

[0033]FIG. 21 is a block diagram showing the configuration of a more generalized version of the decoder of FIG. 20;

[0034]FIG. 22 is a graph showing the C/N versus BER performances for the code of the present invention when an external disturbance of thermal noise is applied;

[0035]FIG. 23 is a graph showing the C/N versus BER performances for the code of the present invention in a fading environment; and

[0036]FIG. 24 is a diagram showing four possible combinations of Δθ(4) in QPSK.

BEST MODE FOR CARRYING OUT THE INVENTION

[0037] First, an example of encoding according to the present invention will be described by dealing with the case where QPSK is employed as the modulation scheme for each carrier and the number of carriers is four. FIG. 1 shows 4×4=16 possible signal point patterns for two carriers when the modulation scheme is QPSK. When the phase difference (relative phase) between the two signal points assigned to the two carriers is designated by Δθ(2), then Δθ(2) is 0, π, π/2, and −π/2 for the patterns (a) to (d), (e) to (h), (i) to (l), and (m) to (p), respectively, in FIG. 1.

[0038] If the phases of the signal points assigned to four carriers are independent of each other, the peak envelope power (PEP) of the four carriers is four times the PEP of one carrier (that is, +6 dB). However, as shown in FIG. 2, provided that the frequency differences in respective two pairs of carriers are the same as each other, if the absolute value of a difference of the relative phase Δθ(2) of the signal points for a pair of carriers from the relative phase Δθ*(2) of the signal points for another pair of carriers, |Δθ(2)−Δθ*(2)|, is π, then PEP is reduced to two times that of one carrier. That is, if codes formed from four carriers are limited to those which have a 4-carrier signal pattern that satisfies the condition

|Δθ(2)−Δθ*(2)|=π  (1)

[0039] a PEP reduction of 3 dB can be obtained.

[0040] Such codes are constructed from a combination of two patterns, one with a 2-carrier relative phase of 0 and the other with a 2-carrier relative phase of π (a combination of one of (a) to (d) and one of (e) to (h) in FIG. 1), or one with a 2-carrier relative phase of π/2 and the other with a 2-carrier relative phase of −π/2 (a combination of one of (i) to (l) and one of (m) to (p)). Therefore, if the input signal is encoded by mapping it to a set of codes that satisfy the above condition, a PEP reduction of 3 dB can be obtained. In the set of these codes, two codes such that the signal point only for one carrier differs and the signal points for the other three carriers are the same cannot exist, because either one of the codes always fails to satisfy the equation (1). That is, to satisfy the equation (1), signal points for two or more carriers must differ. The minimum distance d_(min) is therefore

d_(min)={square root}{square root over (2)} d   (2)

[0041] which means that the error-correction capability improves compared with the case where the signal patterns are not limited. Furthermore, since this mapping has a given logical relationship, the encoding circuit can be constructed using logic circuits instead of ROMs.

[0042] As described above, the codes that satisfy the equation (1) are classified into two groups: one is a combination of 2-carrier relative phases of 0 and π, and the other is a combination of π/2 and −π/2. Therefore, when the modulation scheme is QPSK, the number of groups, G(2), is

G(2)=2   (3)

[0043] Since each group consists of a combination of one of four kinds of 2-carrier signal patterns and one of another four kinds of 2-carrier signal patterns, the number of possible combinations, K₄ (2), is

K ₄(2)=4×4=16   (4)

[0044] Further, since two codes are generated from the combination of two 2-carrier signal patterns, such as two codes (0, 0, 0, 3) and (0, 3, 0, 0) generated from a combination of (0, 0) in FIG. 1(a) and (0, 3) in FIG. 1(e), the number of code patterns P₄(1, 2) (in QPSK, with one kernel) is

P ₄(1, 2)=K ₂(2)×_(G(2))C₁×2=2⁶   (5)

[0045] and the encoding rate R₄( 1, 2)

R₄(1, 2)=6.8=0.75   (6)

[0046] is obtained.

[0047] In the case of QPSK, there are four 2-carrier relative phases, 0, π/2, π, and −π/2, and when the absolute value of the difference between two relative phases, |Δθ(2)−Δθ*(2)|, is defined as Δφ(4), Δφ(4) takes one of three values, 0, π/2, or π. In the case of four carriers for which this value is π/2, a PEP reduction of 0.7 dB is obtained though it is inferior to the 3 dB obtained when the value is π. Such codes also fall within the scope of the present invention.

[0048] When the modulation scheme for each carrier is an M-ary phase shift keying modulation scheme (MPSK, M=2^(m), m≧2), the number of possible 2-carrier relative phases Δθ(2) is 2^(m). From these, 2^(m)/2 pairs that satisfy the equation (1) can be obtained. Hence, the number of groups G(m) that satisfy the equation (1) is

G(m)=2^(m)/2=2^(m−1)   (7)

[0049] Since each group consists of one of 2^(m) kinds of 2-carrier signal patterns and another one of 2^(m) kinds of 2-carrier signal patterns, the number of possible combinations, K₄(m), is

K₄(m)=2^(m)×2^(m)=2^(2m)   (8)

[0050] When m=2, the equations (7) and (8) are reduced to the equations (3) and (4), respectively. As with the case of m=2, since two codes are generated from each combination of two 2-carrier signal patterns, the number of code patterns, P₄(1, m), is

P ₄(1, m)=K ₄(m)×_(G(m)) C ₁×2=2^(2m)×2^(m−1)×2=2^(3m)   (9)

[0051] and the coding rate R₄(1, m)

R₄(1, m)=3m/4m=0.75   (10)

[0052] is obtained.

[0053] In one aspect of the present invention, both the earlier described PEP reduction effect and code distance extension effect are obtained using a 4n-carrier code constructed from n kernels each consisting of a 4-carrier signal pattern that satisfies the equation (1). Here, two carrier pairs, represented by the phase differences Δθ(2) and Δθ*(2) in the equation (1), are called two subsets which form a 4-carrier kernel. In this case, the only condition relating to the frequency is that in each kernel the carrier spacing between the two carriers (forming a subset) are the same as each other; therefore, the carriers forming each kernel can be placed anywhere on the frequency axis, provided this condition is satisfied. In other words, a code may be created by assigning each kernel to any 4-carrier block, as shown in FIG. 3, provided that the above condition is satisfied. Accordingly, as the number of kernels increases, greater freedom is given in reordering on the frequency axis. Thus the number of code patterns increases, and bringing the coding rate closer to 1.

[0054] First, a description will be given of the case of QPSK with two kernels (m=2, n=2). In this case, consider the two groups of signal patterns (one group consisting of a combination of relative phases of 0 and π and the other consisting of a combination of relative phases of π/2 and −π/2) that can be assigned to one kernel; then, the sum of the number of code patterns P₄(2, 1, 2) obtainable by assigning only either one of the groups to the two kernels and the number of code patterns P₄(2, 2, 2) obtainable by assigning the two groups to the two kernels, respectively, is the total number of possible code patterns P₄(2, 2).

[0055] When assigning only one group consisting, for example, of a combination of relative phases of 0 and π, to the two kernels, the number of variations when reordering on the frequency axis is equal to the number of variations when assigning the two zero-relative-phase carrier pairs to two of the four positions, as shown in FIG. 4, that is, ₄C₂=(4!)/(2!)(2!). Hence, the number of possible code patterns, P₄(2, 1, 2), is

P ₄(2, 1, 2)=(K ₄(2))²×_(G(2)) C ₁×4!/2!2!=2¹⁰×3=3072   (11)

[0056] Besides the codes shown in FIG. 4, a code constructed from carrier pairs of two carriers of a relative phase of 0 or π, for example, adjacent to each other on the frequency axis, can be considered, but any such code becomes identical to one of the codes shown in FIG. 4. Accordingly, the following description is given by assuming that the carrier spacing between any two carriers providing the phase difference Δθ(2) is fixed to one predetermined value.

[0057] When assigning signal patterns belonging to different groups to the two kernels, the number of variations when reordering on the frequency axis is equal to the number of variations when assigning the four different carrier pairs, each with a relative phase of 0, π, π/2, of −π/2, to four positions, that is, it is given as 4!. Hence

P ₄(2, 2, 2)=(K ₄(2))²×_(G(2)) C ₂×4!=2¹¹×3=6144   (12)

[0058] P₄(2, 2) is

P₄(2, 2)=9216

[0059] and the coding rate R₄(2, 2)

R₄(2, 2)=log₂9216/16≈0.823

[0060] is obtained.

[0061] In the above case, the numerator log₂9216 in the equation of the coding rate R₄(2, 2) does not become an integer. Since this makes the encoding/decoding circuits very complex, it is preferable to restrict the number of codes, for example, to 2¹³=8192 and encode a 13-bit signal input into eight QPSK signals. In this case, the coding rate is 13/16≈0.722. Such a coding rate, when not rounding the numerator to an integer, is hereinafter called the ideal coding rate.

[0062] When m≧2 and n=2, the equations (11) and (12), respectively, become

P ₄(2, 1, m)=(K ₄(m))²×_(G(m)) C ₁×4!/2!2!  (13)

P ₄(2, 2, m)=(K ₄(m))²×_(G(m)) C ₂×4!  (14)

[0063] When m≧2 and n≧2, in the case where a code is generated by assigning signal patterns belonging to i kinds of groups (1≦i≦γ=min(n, G(m))) to n kernels, when the number of kernels to which the signal patterns belonging to the j-th group is assigned (1≦j≦i) is denoted by n_(j) (≧1), and when defining as n₀=1, then the range of values that each n_(J) can take is $1 \leq n_{j} \leq {n - {\sum\limits_{c = 0}^{j = 1}{\left( {n_{c} - 1} \right)\quad \left( {1 \leq j \leq {i - 1}} \right)}}}$

[0064] and, from the value of another n_(j) (1≦j≦i−1) , n_(i) is determined as ${n_{i} = {n - {\sum\limits_{j = 1}^{i - 1}n}}};\quad \left( {i \geq 2} \right)$

[0065] Accordingly, when the maximum value $n - {\sum\limits_{c = 0}^{j - 1}\left( {n_{c} - 1} \right)}$

[0066] that each n_(J) can take is denoted by N_(J) (1≦j≦i−1), the number of possible code patterns P₄(n, i, m) for the respective values of i is $\begin{matrix} {{P_{4}\left( {n,i,m} \right)} = \left\{ \begin{matrix} {\left( {K_{4}(m)} \right)^{2} \times_{G{(m)}}C_{1} \times \frac{\left( {2n} \right)!}{\left( {n!} \right)^{2}}} & {i = 1} \\ \begin{matrix} {\left( {K_{4}(m)} \right)^{n} \times_{G{(m)}}C_{1} \times} \\ \left\{ {\sum\limits_{n_{1} = 1}^{N_{1}}{\sum\limits_{n_{2} = 1}^{N_{2}}{\ldots \quad {\sum\limits_{n_{i - 1} = 1}^{N_{i} - 1}\left\{ \frac{\left( {2n} \right)!}{\prod\limits_{j = 1}^{i}\left( {n_{j}!} \right)^{2}} \right\}}}}} \right\} \end{matrix} & {i \geqq 2} \end{matrix} \right.} & (15) \end{matrix}$

[0067] From the above, the total number of possible code patterns P₄(n, m) is equal to the sum of code patterns P₄(n, i, m) obtainable for the respective i, and is given by $\begin{matrix} {{P_{4}\left( {n,m} \right)} = {\sum\limits_{i = 1}^{\gamma}{P_{4}\left( {n,i,m} \right)}}} & (16) \end{matrix}$

[0068] γ=min(n, G(m))

[0069] and the ideal coding rate R₄(n, m) is

R₄(n, m)=log₂P₄(n, m)/4 mn   (17)

[0070] which thus provides R≧¾.

[0071] Table 1 shows the results of the ideal coding rates calculated for various values of m and n, together with the PEP reduction and d_(min). In Table 1, the modulation schemes QPSK and 8PSK are for the cases of m=2 and m=3, respectively, and N (=the number of carries)/4 is n. TABLE 1 PEP MODULATION NUMBER OF REDUCTION SCHEME CARRIERS R [dB] d_(min) QPSK  4 0.750 3.0 {square root}2 d QPSK  8 0.823 3.0 {square root}2 d QPSK 12 0.860 3.0 {square root}2 d QPSK 16 0.883 3.0 {square root}2 d QPSK 32 0.927 3.0 {square root}2 d 8PSK  4 0.750 3.0 {square root}2 d 8PSK  8 0.808 3.0 {square root}2 d 8PSK 12 0.856 3.0 {square root}2 d 8PSK 16 0.867 3.0 {square root}2 d 8PSK 32 0.919 3.0 {square root}2 d

[0072] As can be seen from Table 1, the code of the present invention has the property that the coding rate increases as the number of carriers increases, while having the property of both PEP reduction and error correction.

[0073] In the present invention, in order to simplify the encoder/decoder and to further improve the amount of PEP reduction, including the case where the code length is extended as will be described later, γ or less kinds of groups can be used in any combinations (for example, only two kinds of groups can be used to construct kernels), and the kinds of groups used may be restricted by other conditions (for example, of the two kinds of groups, only those having a phase difference of π/2 are used).

[0074]FIG. 5 shows eight carriers 10 to 17 along the frequency axis, above which the positions in a two-dimensional plane of the signal points assigned to the respective carriers are shown in schematic form by way of example.

[0075] In the illustrated example, a phase difference Δθ(2) of 0 is provided between the carriers 10 and 12, π between the carriers 11 and 13, 0 between the carriers 14 and 16, and π between the carriers 15 and 17. That is, the carriers 10 to 13 form a 4-carrier kernel that satisfies the equation (1), and the carriers 14 to 17 also form a 4-carrier kernel that satisfies the equation (1).

[0076] Furthermore, in the illustrated example, the phase difference of the pair of carriers 10 and 12 from the pair of carriers 14 and 16, the two pairs having the same phase difference, is zero, while there is provided a phase difference of π between the pair of carriers 11 and 13 and the pair of carriers 15 and 17, another two pairs having the same phase difference. Denoting these phase differences by Δθ(4) and Δθ*(4), respectively, as shown in the figure, the following relation holds.

|Δθ(4)=Δθ*(4)|=π  (18)

[0077] Here, the phase difference Δθ(4) of the four carriers is defined by the two Δθ(2) carrier pairs having the same phase difference (Δθ*(4) is defined similarly). In the case of FIG. 5, there are four possible combinations for the phase difference between the two Δθ(2) carrier pairs, as shown in FIG. 24. Therefore, in the illustrated example, Δθ(4)=0 and Δθ*(4)=π, and hence, Δφ(8)=π holds. Further, the carrier spacing between the carriers 10 and 12 is equal to the carrier spacing between the carriers 11 and 13, while the spacing between the carriers 14 and 16 is equal to the spacing between the carriers 15 and 17; in addition, the spacing between the carriers 10 and 14 is equal to the spacing between the carriers 11 and 15. In other words, the carrier spacing between the respective carriers 10 to 13 is equal to the carrier spacing between the respective carriers 14 to 17. In this case, a 6-dB PEP reduction is obtained by adding the 3-dB PEP reduction.

[0078] That is, as in the case of constructing a 4-carrier kernel from two carrier pairs (2-carrier subsets), when an 8-carrier kernel is constructed from two 4-carrier subsets each forming a 4-carrier kernel, if the relation defined by the equation (18) holds between the two 4-carrier subsets, a 3-dB PEP reduction is obtained, provided that the carrier spacing between the respective carriers in one subset is equal to the carrier spacing between the respective carriers in the other subset. Generally, when

Δφ(2^(k+1))=|Δθ(2^(k))−Δθ*(2^(k))|  (19)

[0079] if the relation Δφ(2^(k+1))=π holds, a kernel of code length κ=2^(k+1), constructed from two subsets each forming a kernel of code length κ=2^(k), provides the PEP reduction defined by

ΔP_(PEP)=(2^(k), 2^(k+1))=3 dB

[0080] Here, when k≧2, the phase difference Δθ(2^(k)) of 2^(k) carriers is defined by the two Δθ(2^(k−1)) carrier pairs having the same phase difference (Δθ*(2^(k)) is defined similarly). For the phase difference between the two Δθ(2^(k−1)) carrier pairs, there are as many possible combinations as there are 2^(m) states, as in the case of k=1, but regardless of the value of k.

[0081] As with QPSK, when the phase difference Δφ(2^(k+1)) is a nonzero value other than π, a certain PEP reduction can be obtained though it falls short of the 3 dB achieved when the phase difference is π. FIG. 6 shows the results of calculations, plotting the PEP reduction ΔP_(PEP) (2^(k), 2^(k+1)) as a function of the phase difference Δφ. As shown, a PEP reduction of 3 dB is obtained when Δφ (2^(k+1)) is π, and 0.7 dB when it is π/2.

[0082] The above can be applied recursively. For any value of k, the total PEP reduction ΔP_(PEP) (κ) for the code length κ=2^(k+1) is given by ${\Delta \quad {P_{PEP}\left( 2^{k + 1} \right)}} = {\sum\limits_{i = 1}^{k}{\Delta \quad {P_{PEP}\left( {2^{i},2^{i + 1}} \right)}}}$

[0083] For example, when (Δφ(4), Δφ(8))=(π,π), then ΔP_(PEP)=6 (in the example of FIG. 5), and when (Δφ(4), Δφ(8))={(π, π/2), (π/2, π)}, then ΔP_(PEP)=3.7. Further, when Δ+(*)≡π(*=4, 8, . . . ), ΔP=3k [dB].

[0084] Since the minimum phase angle in 2^(m)-PSK is

Δθ_(min)=π/2^(m−1)

[0085] phase differences that can be expressed in 2^(m)-PSK are

{π,π/2, . . . , π/2^(m−1)}

[0086] Accordingly, in the case of BPSK (m=1), there is only one phase difference Δφ(*)=π, and in the case of QPSK (m=2), only two phase differences Δφ(*)={(π,π/2} can be used. However, in these cases also, an arbitrary phase difference can be provided by giving an offset to the reference phase.

[0087] As shown in FIG. 7, in a code of κ=8, a kernel having eight symbols is constructed from two 4-symbol subsets (A₂, B₂). At this time, when 2-symbol subsets of κ=4 are denoted (A₁, B₁), the two 4-symbol subsets (A₂, B₂) are given by

A₂B₂=A₁B₁•A₁B₁*

[0088] That is, A₂, which is one of the subsets forming the κ=8 kernel, is nothing but a κ=4 kernel, and the other subset B₂ is formed by giving a phase difference Δφ (8) to the 2-symbol subset B₁ that forms part of the κ=4 kernel.

[0089] Generally, in a code of κ=2^(k+1), a kernel having 2^(k+1) symbols is constructed from two 2^(k)-symbol subsets (A_(k), B_(k)). At this time, when 2^(k−1)-symbol subsets of κ=2^(k) are denoted (A_(k−1), B_(k−1)), the two 2^(k)-symbol subsets (A_(k), B_(k)) are given by

A_(k)B_(k)=A_(k−1)B_(k−1)•A_(k−1)B_(k−1)*   (20)

[0090] That is, A_(k), which is one of the subsets forming the κ=2^(k+1) kernel, is nothing but a κ=2^(k) kernel, and the other subset B_(k) is formed by giving a phase difference Δφ (2^(k+1)) to the 2^(k−1)-symbol subset B_(k−1) that forms part of the κ=2^(k) kernel. Here, A₀ and B₀ each designate the code assigned to one carrier, and it is assumed that the phase difference Δφ (4) in A₁B₁ is restricted to a prescribed value (for example, π). At this time, A_(k)=A_(k−1)B_(k−1) and B_(k)=A_(k−1)B*_(k−1); hence, the code is extended with an arbitrary code length κ=2^(k+1). Here, B*_(k−1) is obtained by adding the phase difference Δφ (2^(k+1)) to B_(k−1). For example, when Δφ (2^(k+1))=π, if these are assumed to be a sequence of signal points, since the phase rotation of π is equivalent to inverting the signal points, it follows that

A_(k)B_(k)=A_(k−1)B_(k−1)•A_(k−1){overscore (B_(k−1))}  (21)

[0091] At this time, the number of groups (G(m)) is the same as that defined by the equation (7) when κ=4. For each pattern that the kernels of κ=2^(k), the subsets forming the kernel of κ=2^(k+1), can take, there are 2^(m) possible combinations of signal patterns that provide a phase difference of π; hence, the number of patterns (K_(2k+1)(m)) that the kernel (κ=2^(k+1)) can take in each group is given by

K ₂ _(^(k+1)) (m)=2^(m) ×K ₂ _(^(k)) (m)   (22)

[0092] Here, in a code constructed from n of kernels κ=2^(k+1), PEP can be reduced by 3k [dB] with the spacing between the 2^(k)-carrier subsets set at an arbitrary value. That is, the carriers can be reordered on a subset by subset basis (in blocks of 2^(k) carriers).

[0093] Since the total number of carriers is 2^(k+1)n instead of 4n for κ=4, and the reordering is performed in blocks of 2^(k) carriers instead of 2 carriers for κ=4, the number of reordering patterns is the same as that defined by the third term on the right-hand side of the equation (15). Further, since the kinds of groups coincide with the kinds of groups for κ=4, the number of code patterns (P₂ _(^(k+1)) (n, m)) for the code length κ=2^(k+1) can be obtained by replacing K₄(m) in the equation (15) by K₂ _(^(k+1)) (m), that is

P ₂ _(^(k+1)) (n, m)=2^(mn) ×P ₂ _(^(k)) (n, m) k≧2   (23)

[0094] From the above result, the ideal coding rate (R₂ _(^(k+1)) (n, m)) is uniquely given as $\begin{matrix} \begin{matrix} {{R_{2^{k + 1}}\left( {n,m} \right)} = \frac{\log_{2}{P_{2^{k + 1}}\left( {n,m} \right)}}{2^{k + 1}{mn}}} \\ {= {{\frac{1}{2}{R_{2^{k}}\left( {n,m} \right)}} + \frac{1}{2^{k + 1}}}} \end{matrix} & (24) \end{matrix}$

[0095] The code that generates this signal pattern has a minimum distance {square root}{square root over (2^(k))} times as large, that is, d_(min)={square root}{square root over (2^(k))} d (d: minimum distance between signal points). This makes it possible to improve the symbol-error rate (SER) by 3k [dB] in terms of C/N (the improvement on BER is somewhat different depending on the number of modulations, m). An example is shown in Table 2. TABLE 2 PEP MODULATION CODE LENGTH REDUCTION INDEX (m) (κ) R(1, m) [dB] d_(min) 2, 3  4 0.75 3.0 {square root}2 d   2, 3  8 0.5  6.0 2 d 2, 3 16 0.31 9.0 {square root}8 d   2, 3 32 0.19 12.0  4 d

[0096] Based on the above coding algorithm, the PEP reduction will be further increased. For example, when assigning two κ=4 kernels (n=2) to eight carriers in QPSK, if the two kernels belonging to two different groups, i.e., a κ=4 kernel whose subsets have relative phases Δθ of 0 and π and a κ=4 kernel whose subsets have relative phases Δθ of π/2 and −π/2, are assigned as shown in FIG. 8, the 3-dB PEP reduction due to Δφ (4)=π can be obtained as already described. In FIG. 8, the signal points assigned to the respective carriers are shown above the carriers. When the combination of the carrier pair of relative phase Δθ(2)=0 and the carrier pair of relative phase Δθ(2)=π/2 is regarded as one 4-carrier kernel, and the combination of the carrier pair of relative phase Δθ(2)=π and the carrier pair of relative phase Δθ(2)=−π/2 is regarded as the other 4-carrier kernel, it is seen that Δφ (4)=π/2 is attained between the respective kernels. That is, the code shown in FIG. 8 represents the property having a 3-dB PEP reduction due to Δφ (4)=π and also represents the property having a 0.7-dB PEP reduction effect due to Δφ (4)=π/2, and thus achieves a total PEP reduction of 3.7 dB. By assigning such a code to a plurality of kernel pairs, a PEP reduction of 3.7 dB can be obtained.

[0097] In the case of 2^(m)PSK (m≧2), kernels having a phase difference of π are classified into G(m)=2^(m−1) kinds of groups, as previously described. Further, when these are restricted to the kernels where the subsets of any two kernels have a phase difference of π/2 relative to each other, the number of possible groups is

G′(m)=G(m)/2=2^(m−2)   (25)

[0098] Since a kernel pair is treated as a basic unit, n=2n′ (n′≧1). At this time, each kernel pair combines the property of the phase difference π with the property of the phase difference π/2. Therefore, the PEP reduction amount is 3+0.7=3.7 [dB]. Further, since the code of κ=4 is used, the minimum free distance is d_(min)={square root}{square root over (2)} d.

[0099] By considering in the equation (15) that i kinds of pair groups are used from the G′(m) kinds of pair groups, the number of code patterns in this code is given by $\begin{matrix} {{P_{4}^{\prime}\left( {n,i,m} \right)} = \left\{ \begin{matrix} {{\left( {K_{4}(m)} \right)^{n} \times_{G^{\prime}{(m)}}C_{1} \times \frac{\left( {2n} \right)!}{\left( {n!} \right)^{2}}\quad i} = 1} \\ \begin{matrix} {\left( {K_{4}(m)} \right)^{n} \times_{G^{\prime}{(m)}}C_{1} \times} \\ {{{\left\{ {\sum\limits_{n_{1} = 1}^{N_{1}}{\sum\limits_{n_{2} = 1}^{N_{2}}{\ldots \quad {\sum\limits_{n_{i - 1} = 1}^{N_{1} - 1}\left\{ \frac{\left( {2n} \right)!}{\prod\limits_{j = 1}^{i}\left( {n_{j}!} \right)^{4}} \right\}}}}} \right\} \quad i} \geqq 2}\quad} \end{matrix} \end{matrix} \right.} & (26) \end{matrix}$

[0100] Here, since this is equivalent to constructing n/2 kernels using i kinds of groups (1≦i≦γ=min(n/2, G′(m))), when the number of kernels to which the j-th group is assigned (1≦j≦i) is denoted by n_(J) (≧1), and when n₀=1, then $n_{i} = {{n/2} - {\sum\limits_{j = 1}^{i - 1}n_{j}}}$

[0101] (i≧2), and the range of values that each n_(J) can take is $1 \leq n_{j} \leq {{n/2} - {\sum\limits_{c = 0}^{j - 1}{\left( {n_{c} - 1} \right)\quad \left( {1 \leq j \leq {i - 1}} \right)}}}$ ${Here},{{\sum\limits_{j = 1}^{i}n_{j}} = {n/2}}$

[0102] As a result, when n=2n′, that is, when the number of kernels is even, the ideal coding rate is given by $\begin{matrix} {\begin{matrix} {{R_{4}^{\prime}\left( {n,m} \right)} = \frac{{\log_{2}{\sum\limits_{i = 1}^{\gamma^{\prime}}P_{4}}},\left( {n,i,m} \right)}{4{mn}}} \\ {= \frac{\log_{2}{P_{4}^{\prime}\left( {n,m} \right)}}{4{mn}}} \end{matrix}{\gamma^{\prime} = {\min \left( {\frac{n}{2},{G^{\prime}\quad (m)}} \right)}}} & (27) \end{matrix}$

[0103] Table 3 shows the results of calculations of the ideal coding rate of this code for QPSK and 8PSK, together with the values of the PEP reduction and d_(min). TABLE 3 PEP MODULATION CODE LENGTH REDUCTION INDEX (m) (κ) R(2, m) [dB] d_(min) 2 4 0.79 3.7 {square root}2 d 3 4 0.73 3.7 {square root}2 d

[0104] Next, the 4-carrier kernel pair (FIG. 8) that provides the 3.7-dB PEP reduction is defined as a pair of extended subsets A₁ and B₁, and the code length is extended by treating the 8-carrier code pattern formed from these subsets as the basic unit. By so doing, with the code length of κ=2^(k+2), ΔP_(PEP) (2^(k+2))=3k+0.7 [dB] and d_(min)={square root}{square root over (2^(k))} d are achieved. One example of such a code is shown in FIG. 9 for the case of k=2. Here, A₀, B₀ is not defined.

[0105] In FIG. 9, the phase difference Δφ (4) within each of the extended subsets A₁ and B₁ is π, and the phase difference between the extended subsets A₁ and B₁ is π/2.

[0106] In constructing a code of κ=16 using such extended subsets A₁ and B₁, when the phase difference Δθ(8) between one extended subset A₁ and another extended subset A₁ and the phase difference Δθ*(8) between one extended subset B₁ and another extended subset B₁* are set to satisfy the relation Δφ (16)=π, ΔP=6.7 dB and d_(min)=2d can be achieved.

[0107] When the kinds of groups that the extended subsets can take are denoted as G=(G₁, G₂), then (A₁, B₁)=(G₁, G₂) or (G₂, G₁). Further, this code is classified into three types (P1, P2, and P3), as shown in FIG. 10, according to the arrangement on the frequency axis.

[0108] The extension of this code is expressed as

A₂B₂=A₁B₁•A₁B₁*

[0109] A further extension is expressed as

A_(k)B_(k)=A_(k−1)B_(k−1)•a_(k−1)B_(k−1)*   (28)

[0110] which is the same as the equation (20), except that, while the equation (20) was applicable for k≧1, in the extension of this code the equation (28) is applicable for k≧2 since A₀, B₀ is not defined. By performing such an extension, ΔP_(PEP) (2^(k+2))=3k+0.7 [dB] and d_(min)={square root}{square root over (2^(k))} d are achieved in a code of κ=2^(k+2) (k≧1).

[0111] As distinguished from subsets generated starting from 2-carrier subsets A₀ and B₀, the subsets A_(k) and B_(k) generated starting from the extended subsets A₁ and B₁ are also called extended subsets.

[0112] In FIG. 11, that is, when k=2, since the code extension is performed based on the three types (P1, P2, and P3) shown in FIG. 10, the carrier position where the phase difference is added differs from type to type. On the other hand, when k≧3, as shown in FIGS. 12 and 13, only P1 is used.

[0113] Further, when k≧2, the kernel of 2^(k+2) carriers can be reordered not based on 2^(k+1)-carrier extended subsets (A_(k), B_(k)), but based on 2^(k)-carrier extended subsets (A_(k−1), B_(k−1)); this serves to increase the number of code patterns. At this time, 2^(k) -extended subsets corresponding to the three respective types are reordered. As shown in Table 4, there are four possible reordering patterns for each type (this increases the number of code patterns by two bits). Symbols shown in the table designate the four 2^(k)-carrier extended subsets forming the kernel of κ=2^(k+2), that is, (A, B, A′, B′)=(A_(k−1), B_(k−1), A_(k−1), {overscore (B_(k−1))})

[0114] Table 4: Reordering patterns of extended subsets according to the type P1 P2 P3 A′, A, B′, B A′, A, B′, B A′, B′, B, A A′, B′, A, B A′, B′, A, B A′, B′, A, B B′, B, A′, A B′, B, A′, A B′, A′, A, B B′, A′, B, A B′, A′, B, A B′, A′, B, A

[0115] From the above, the coding rate, R′₈ (n, m), of the basic sequence of this code is given based on the equation (26). Since the kernels in the basic sequence each contain one of the two kinds of extended subsets forming π/2-pairs, this corresponds to the case of n=2 and i=1, and the method of pair group selection is not considered in the generation of the kernels. Accordingly, the number of resulting code patterns is obtained by dividing P′₄ (2, 1, m) by the number of combinations of pair group selections, that is,

P′ ₄ (2, 1, m)/_(G′(m)) C ₁=(K ₄(m))^(n)×{(2×2)!/(1!)²(1!)²}=2^(4m)×4!  (29)

[0116] When duplications arising from the reordering of the extended subsets are considered, the number of patterns (K′₈(m)) that the 8-carrier kernel can take is one half the number of code patterns given above, and is therefore given by $\begin{matrix} \begin{matrix} {{K_{8}^{\prime}(m)} = \frac{\frac{P_{4}^{\prime}\left( {2,l,m} \right)}{{G^{\prime}(m)}C_{1}}}{2}} \\ {= {2^{{4m} - 1} \times {4!}}} \end{matrix} & (30) \end{matrix}$

[0117] As for the number of patterns in the case of kernel reordering, when κ=8 and N=κn, and when n kernels are constructed using i kinds of groups (1≦i≦γ′=min(n, G′(m))), the number of patterns is the same as that for the 4-carrier code described above. That is, since the basic unit of the code length is doubled (from 4 to 8), the reordering can be thought of as reordering on an extended subset by extended subset basis, and this can be regarded as selecting i kinds of groups from G′(m) kinds of groups. Hence, the number of code patterns P′₈(n, i, m) in this code is $\begin{matrix} {{P_{8}^{\prime}\left( {n,i,m} \right)} = \left\{ \begin{matrix} {{\left( {K_{8}^{\prime}(m)} \right)^{n} \times_{G^{\prime}{(m)}}C_{1} \times \frac{\left( {2n} \right)!}{\left( {n!} \right)^{2}}\quad i} = 1} \\ \begin{matrix} {\left( {K_{8}^{\prime}(m)} \right)^{n} \times_{G^{\prime}{(m)}}C_{1} \times} \\ {{{\left\{ {\sum\limits_{n_{1} = 1}^{N_{1}}{\sum\limits_{n_{2} = 1}^{N_{2}}{\ldots \quad {\sum\limits_{n_{i - 1} = 1}^{N_{1} - 1}\left\{ \frac{\left( {2n} \right)!}{\prod\limits_{j = 1}^{i}\left( {n_{j}!} \right)^{2}} \right\}}}}} \right\} \quad i} \geqq 2}\quad} \end{matrix} \end{matrix} \right.} & (31) \end{matrix}$

[0118] From the above, the total number of code patterns, P′₈(n, m), is given by $\begin{matrix} {{P_{8}^{\prime}\left( {n,m} \right)} = {\sum\limits_{i - 1}^{\gamma^{\prime}}{P_{8}^{\prime}\left( {n,i,m} \right)}}} & (32) \end{matrix}$

[0119] and the ideal coding rate R′₈(n, m) is

R′₈(n, m)=log₂ P′₈(n, m)/8 mn   (34)

[0120] (b) When κ=2^(k+2) (k≧2)

[0121] The method of extension of this code is the same as the extension of the 4-carrier code described above. However, from the above, when duplications arising from the reordering in each group are considered, since the reordering of four kinds of extended subsets is possible for any value of k (k≧2), the number of patterns (K₂ _(^(k+2)) (m)) that the kernel (κ=2^(k+2)) can take is given by

K ₂ _(^(k+2)) (m)=4×(2^(m))^(k−1) ×K′ ₈(m)=2^(m(k−1)+2) ×K′ ₈(m)   (35)

[0122] This provides the code pattern (P′_(2k+2)(n, m)) with the code length of 2^(k+2), and hence

P′ ₂ _(^(k+2)) (n, m)=2^(n{m(k−1)+2)}) ×P′ ₈(n, m)   (36)

[0123] From the above result, the ideal coding rate (R′₂ _(^(k+2)) (n, m) (k≧2)) is uniquely given by $\begin{matrix} \begin{matrix} {{R_{2^{k + 2}}^{\prime}\left( {n,m} \right)} = \frac{\log_{2}{P_{2^{k - 2}}^{\prime}\left( {n,m} \right)}}{2^{k + 2}{mn}}} \\ {= {{\frac{1}{2^{k - 1}}{R_{8}^{\prime}\left( {n,m} \right)}} + \frac{{m\left( {k - 1} \right)} + 2}{2^{k + 2}m}}} \end{matrix} & (37) \end{matrix}$

[0124] Table 5 shows the results of calculations of the coding rate, together with the values of the PEP reduction and d_(min). TABLE 5 PEP MODULATION CODE LENGTH REDUCTION INDEX (m) (κ) R(1, m) [dB] d_(min) 2  8 0.79 3.7 {square root}2 d   16 0.52 6.7 2 d 32 0.29 9.7 {square root}8 d   3  8 0.73 3.7 {square root}2 d   16 0.47 6.7 2 d 32 0.27 9.7 {square root}8 d  

[0125]FIG. 14 shows the relationship between the number of carriers, N, and the coding rate, for the code of Table 2 that provides PEP reduction 3k [dB] and d_(min) ={square root}{square root over (2^(k))} d with the code length κ=2^(k+1) and the code of Table 3 that provides PEP reduction 3.7 [dB] and d_(min)={square root}{square root over (2)} d with the code length κ=4. FIG. 15 shows the relationship between the number of carriers, N, and the coding rate, for the code of Table 5 that provides PEP reduction 3k+0.7 [dB] and d_(min)={square root}{square root over (2^(k))} d with the code length κ=2^(k+2).

[0126] When the code of Table 3 is compared with the code of Table 5 with κ=8, it can be seen that when the number of carriers N=8, the coding rate, PEP reduction, and d_(min) are the same between the two codes because both codes provide the same code. However, as can be seen from a comparison between “□” in FIG. 14 and “∘” in FIG. 15, the coding rate in FIG. 14 becomes higher as the number of carriers, N, increases. This is because the former allows reordering on a subset-by-subset basis (in blocks of 2 carries) whereas, in the latter case, reordering is performed on an extended subset by extended subset basis (in blocks of 4 carriers) resulting in less freedom in reordering. However, the latter code has the advantage that the code length can be extended achieving ΔP_(PEP) (2^(k+2))=3k+0.7 [dB] with κ=2^(k+2).

[0127] The numerator log₂P_(k)(n, m) of the ideal coding rate of the present invention does not necessarily become an integer. This indicates that, in digital signal processing based on binary number, it is not possible to express values without providing redundancy; if this was to be achieved, the encoder and decoder would become very complex in configuration, and the amount of hardware would increase. Accordingly, by using the value (└log₂P_(κ)(n, m)┘) obtained by dropping the fractional portion of log₂P_(κ)(n, m), any information bit is made to correspond to a code bit. At this time, for the code length κ, the coding rate (R*_(κ)(n, m)) is given by

R*_(κ)(n, m)=└log₂P_(κ)(n, m)┘/κmn=C/D   (38)

[0128] This is achieved by restricting the total number of combinations to 2^(c), for example, when determining n kernels that satisfy Δφ (*)≡π(*=4, 8, . . . , κ) and generating a transmit sequence for N=κn carriers. That is, at this time, the code data (c(i)) generated by information data i (0≦i≦2^(c)−1) are mapped to a sequence of n kernels expressed with one symbol duration of κn carriers, that is, a sequence of corresponding κn transmit signal points

{right arrow over (s)}(c(i))={{right arrow over (s)}₁(c(i)), {right arrow over (s)}₂(c(i)), . . . , {right arrow over (s)}_(κn)(c(i))}ε{right arrow over (S)}

[0129] Here, when M=2^(m) signal points in MPSK are denoted {right arrow over (q)}_(i) (1≦i≦M; ε{right arrow over (Q)}), then {right arrow over (S)}ε{right arrow over (Q)}. Similar coding is applied to all other codes.

[0130]FIG. 16 shows the configuration of an encoder in a system with m=2 (QPSK), code length κ=4 (k=1), and number of kernels n=3 (number of carriers N=κn=12), according to one embodiment of the present invention. In this system, the number of bits of the code is m×K×n =24 bits. On the other hand, the value of the equation (16) is 1,638,400, and the numerator of the equation (17) is 20.643 . . . , which is rounded down to the nearest integer 20. That is, encoding is performed using 2²⁰ codes out of the 1,638,400 24-bit codes in which all the three 4-carrier kernels provide Δφ (4)=π. The encoding rate is 20/24.

[0131] A 2-carrier selecting unit 22, in accordance with the 20-bit input signal, selects combinations of signal points that satisfy Δφ (4)=π from among the 16 combinations shown in FIG. 1, assigns the selected combinations of signal points to the six subsets each consisting of two carriers, and outputs mapping control signals indicating the assigned combinations of signal points. Since each subset consists of two carriers, and the signal point assigned to each carrier is identified with two bits (m=2), the 2-carrier selecting unit 22 outputs a 4-bit mapping control signal for each subset.

[0132] In each 2-carrier mapping unit 24, mapping to signal points is performed in accordance with the mapping control signal input to it. More specifically, when mapping to (0, 0) shown in FIG. 1(a) is specified, the I phase and Q phase of the two carriers are all set to the high level (for example, +1) for output, while when mapping to (1, 1) shown in FIG. 1(b) is specified, the I phase of the two carriers is set to the high level (for example, +1), and the Q phase to the low level (for example, −1), for output.

[0133] The frequencies f₁ to f₁₂ of 12 quadrature modulators 25 are, for example, equally spaced apart; at least, the carrier allocations between f₁ and f₂, f₃ and f₄, f₅ and f₆, f₇ and f₈, f₉ and f₁₀, and f₁₁ and f₁₂ are equal to each other.

[0134] Each 2-carrier mapping unit 24 is a circuit that maps four bits of input one for one to four bits of output, and can therefore be easily implemented using a simple combination logic circuit. The 2-carrier selecting unit 22 can be easily implemented using a ROM. Since there is a logical between the input and output, as described above, it is also possible to implement it using a combinational logic circuit.

[0135]FIG. 17 shows a modification of the encoder of FIG. 16. As with the circuit of FIG. 16, m=2, n=3, and κ=4 (k=1). A 2-carrier phase generating unit 26 determines the combinations of phases given to the carriers, and a 2-carrier reordering unit 30 reorders the carriers in blocks of two carriers on the frequency axis.

[0136] In this system, the number, G(m), of groups of kernels that satisfy Δφ (4)=π is two. More specifically, there are two kinds of kernels, one being a 4-carrier kernel in which the phase differences Δθ(2) between two carriers are 0 and π, and the other a 4-carrier kernel in which the phase differences Δθ(2) between two carriers are π/2 and −π/2. Once the kind of kernel to be used is determined, the number of possible signal point combinations to be given to each carrier pair is given as

4×4=16 (see FIG. 1)

[0137] In the case of three kernels, therefore, once the kinds of kernels to be assigned to the respective kernels are determined, the number of possible signal point (phase) combinations to be given to the kernels are given as

16³=2¹²

[0138] Accordingly, when the kind of kernel to be used for each of the three kernels is determined, each of the signal point combinations to be given to them is identified with 12 bits.

[0139] When all the three kernels are constructed using only one of the two kinds of groups, the number of variations when reordering in the 2-carrier reordering unit 30 is equal to the number variations when assigning the three carrier pairs to three of the six positions; hence

6!/3!3!=20

[0140] If they are constructed using only the other kind of group, the number is also given by

6!/3!3!=20

[0141] If one kernel is constructed using one kind of group (Δθ(2)=0, π) and the other two kernels are constructed using the other kind of group (Δθ(2)=π/2, −π/2), the number of variations when reordering is equal to the number variations when assigning one carrier pair of Δθ(2)=0, π and two carrier pairs of Δθ(2)=π/2, −π/2 to six positions; hence

6!/2!2!=180

[0142] Likewise, if two kernels are constructed using one kind of group (Δθ(2)=0, π) and one kernel is constructed using the other kind of group (Δθ(2)=π/2, −π/2), the number of variations when reordering is

6!/2!2!=180

[0143] Since 2⁸<20+20+180+180<2⁹,

[0144] by restricting the number of kinds of groups used and the number of variations when reordering to 2⁸, 2¹²×2⁸ kinds of codes can be obtained, and thus 20 bits of input can be encoded.

[0145] Further, since 2⁸<180+180,

[0146] if the codes are restricted to those constructed using the two kinds of groups, not using those constructed using only one kind of group for the three kernels, 20 bits of input can be encoded. Whether one kind of group is used for only one of the three kernels or for two of the three kernels can be specified using one bit.

[0147] From the above, in FIG. 17, the 20 bits of input are divided between 12 bits for determining the combinations of carrier phases and 8 bits for reordering. Of these 8 bits, one bit (for example, the most significant bit) is also used to determine whether the one kind of group is used for one kernel or for two kernels.

[0148] More specifically, of the 8 bits, one bit is input to the 2-carrier phase generating unit 26, and this bit determines the number of groups. Then, the combinations of phases to be given to the six 2-carrier subsets are determined in accordance with the 12-bit input. The 2-carrier mapping units 28 are identical to the 2-carrier mapping units 24 in FIG. 16. Their outputs are reordered along the frequency axis in the 2-carrier reordering unit 30 in accordance with the 8-bit input.

[0149] The 2-carrier phase generating unit 26 and the 2-carrier reordering unit 30 can be easily implemented using a combinational logic circuit.

[0150]FIG. 18 further generalizes the encoder of FIG. 16, and represents an encoder for producing all the kinds of codes thus far described.

[0151] An (extended) subset selecting unit 32, in accordance with C bits of input, selects the combinations of signal points that satisfy, for example, Δφ≡π, assigns the selected combinations of signal points to 2n subsets or extended subsets, and outputs mapping control signals indicating the assigned signal points. Since the signal points assigned to each subset (or extended subset) are identified with mκ/2 bits, the (extended) subset selecting unit 32 outputs an mκ/2-bit mapping control signal for each subset or extended subset.

[0152] In accordance with the mκ/2-bit mapping control signal input, each (extended) subset mapping unit 34 outputs an mκ/2-bit mapping signal indicating the I phase and Q phase values of signal points for κ/2 carriers.

[0153]FIG. 19 shows a modification of the encoder of FIG. 18, and represents an encoder for producing all kinds of codes thus far described, by further generalizing the representation of the encoder of FIG. 17.

[0154] An (extended) subset phase generating unit 36 determines the combinations of phases to be given to the carriers, and an (extended) subset reordering unit 40 performs reordering along the frequency axis on a subset by subset basis or on an extended subset by extended subset basis.

[0155] When constructing n kernels using i kinds of groups (1≦i≦γ=min(n, G(m))), the number of reorders, C(n, i, m), is $\begin{matrix} {{C\left( {n,i,m} \right)} = \left\{ \begin{matrix} {\quad_{G{(m)}}C_{1} \times \frac{\left( {2n} \right)!}{\left( {n!} \right)^{2}}} & {i = 1} \\ {{\quad_{G{(m)}}C_{1} \times \left\{ {\sum\limits_{n_{1} = 1}^{N_{1}}{\sum\limits_{n_{2} = 1}^{N_{2}}{\ldots \quad {\sum\limits_{n_{i - 1} = 1}^{N_{1} - 1}\left\{ \frac{\left( {2n} \right)!}{\prod\limits_{j = 1}^{i}\left( {n_{j}!} \right)^{2}} \right\}}}}} \right\}}\quad} & {i \geqq 2} \end{matrix} \right.} & (39) \end{matrix}$

[0156] Their sum, i.e., the total number of reorders, C(n, m), is given by $\begin{matrix} {{C\left( {n,m} \right)} = {\sum\limits_{i = 1}^{\gamma}{C\left( {n,i,m} \right)}}} & (40) \end{matrix}$

[0157] Accordingly, the required reordering bit count is └log₂C(n, m)┘=x bits. In the illustrated configuration, of the input information bits (C), x bits are input as a subset reordering control signal to the (extended) subset reordering unit 40, and the remaining C-x bits are input to the (extended) subset phase generating unit 36.

[0158] Some of the reordering control signal bits are input to the (extended) subset phase generating unit 36 to determine what kinds of kernels should be used and how many kernels. Then, the combination of phases for each subset or extended subset is determined in accordance with the input C-n bits from the combinations that satisfy Δφ≡π. The (extended) subset mapping units 38 are identical to the (extended) subset mapping unit 34 in FIG. 18. The (extended) subset reordering unit 40 performs reordering along the frequency axis on a subset by subset basis or on an extended subset by extended subset basis in accordance with the x-bit reordering control signal.

[0159] The transmitted signal encoded by the above encoder at the transmitting end is transmitted over a transmission channel with N carriers and received at the receiving end where the signal is decoded using, for example, a maximum-likelihood decoding method. That is, using maximum-likelihood decoding, a signal having C-bit width information representing the signal of one symbol period is decoded from the received D-bit width, κn-carrier received signal (γ)

{right arrow over (γ)}=({right arrow over (γ)}₁, {right arrow over (γ)}₂, . . . , {right arrow over (γ)}_(κn))

[0160] More specifically, when the likelihood function of code c(i) is $\begin{matrix} {{\lambda \left( {c(i)} \right)} = {\sum\limits_{m = 1}^{\kappa \quad n}\left( {{{\overset{\rightarrow}{s}}_{m}\left( {C(i)} \right)} - {\overset{\rightarrow}{\gamma}}_{m}} \right)^{2}}} & (41) \end{matrix}$

[0161] the decoded data is given as

choose (î) if c(î)=min_(c(i)){λ(c(i))}  (42)

[0162] That is, the distance between the received signal {right arrow over (γ)} and the code {right arrow over (s)} (c(i)) is calculated, and i that provides the smallest distance is taken as the decoded data.

[0163]FIG. 20 shows the configuration of a decoder for decoding the code produced by the encoder of FIG. 16 or 17 having the coding rate 20/24, m=2, n=3, and κ=4 (k=1).

[0164] A timing control unit 42 outputs a 20-bit width signal that is incremented or decremented for every one clock timing and completes one cycle in one symbol period. An encoding unit 44, which is the same in configuration as the encoder of FIG. 16 or 17, encodes the 20-bit width signal output from the timing control unit 42 in accordance with the same algorithm as used at the transmitting end and outputs a 24-bit width code. A code distance calculating unit 46, using the equation (41), calculates the code distance from the received signal and the output of the encoding unit 44, and outputs the result as 16-bit width data. A code distance comparing unit 48 compares it with the smallest distance value stored in a smallest-distance memory 50 and, when the smallest distance is to be updated, updates the contents of the smallest-distance memory 50 and stores the output of the timing controller 42 at that instant in a timing memory 52. When the output of the timing control unit 42 completes one cycle, the contents of the timing memory 52 are output as the decoded data.

[0165]FIG. 21 shows the configuration of a decoder for decoding the code produced by the encoder of FIG. 18 or 19. The encoding unit 44 is the same in configuration as the encoder of FIG. 18 or 19. Otherwise, the operation is the same as that of the decoder of FIG. 20, except that the bit width is generalized, and therefore, the description will not be repeated here.

[0166] The calculation results of the signal power (C/N) versus BER performances for the code of the present invention are shown in FIG. 22 (AWGN: Additive White Gaussian Noise) and FIG. 23 (fading). In either case, the κ=4 codes that satisfy Δφ (4)=π are shown, the modulation scheme used is QPSK (m=2) or 8PSK (m=3), and the number of carriers (N) is set to 8 or 4. At this time, the minimum free distance of the code is d_(min)={square root}{square root over (2)} d, which means an increase by a factor of 2 in terms of the value of power. Improvements in performances are observed in all cases, and the same minimum free distance expansion effect can be obtained for the κ=4 codes that satisfy Δφ (4)=π, π/2 simultaneously and also the codes that use extended subsets. Especially, in a fading environment, a more than 10 dB improvement in performance is achieved at BER=10⁻³, and since the code of the invention is a block code that takes a multicarrier symbol as a unit, no interleavers are needed, offering the advantage of being able to drastically reduce the transmission delay. 

1. A coding method for multicarrier signal comprising the steps of: determining, based on an input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of a difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1; and generating a code corresponding to said signal input by assigning said plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which said second phases are assigned from 2^(k−1) carrier frequencies to which said first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which said fourth phases are assigned from 2^(k−1) carrier frequencies to which said third phases are assigned, carrier frequencies to which said third phases are assigned having the same carrier allocation as those of said first phases.
 2. A method according to claim 1, wherein said given value is π.
 3. A method according to claim 2, wherein said phase condition and said carrier allocation are simultaneously satisfied for a plurality of values of k.
 4. A method according to claim 3, wherein said phase condition and said carrier allocation are simultaneously satisfied for all values of k not smaller than 1 and not larger than K, where K is an integer not smaller than
 1. 5. A method according to claim 2, wherein k is 1, and a second phase condition that there be provided an absolute value of a difference of π/2 between said two phase differences Δθ(2) or Δθ*(2) in first kernels and said two phase differences Δθ(2) or Δθ*(2) in second kernels equal in number to said first kernels, is further satisfied.
 6. A method according to claim 2, wherein k is 3 or larger, said plurality of phases further contain a plurality of kernels each comprising a first phase pair with one phase having a phase difference of 0 from the other, a second phase pair with one phase having a phase difference of π from the other, a third phase pair with one phase having a phase difference of π/2 from the other, and a fourth phase pair with one phase having a phase difference of −π/2 from the other, and said phases are assigned to said plurality of frequencies in such a manner as to further satisfy a second carrier allocation that the spacing between any two carriers is equal among the four carrier-frequency pairs to which said first to fourth phase pairs have been assigned.
 7. A method according to claim 6, wherein said phase condition and said carrier allocation are simultaneously satisfied for a plurality of values of k.
 8. A method according to claim 7, wherein said phase condition and said carrier allocation are simultaneously satisfied for all values of k not smaller than 3 and not larger than K, where K is an integer not smaller than
 3. 9. A decoding method for multicarrier signal comprising the steps of: determining, based on each input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of a difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1; generating a plurality of codes corresponding to said signal input by assigning said plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which said second phases are assigned from 2^(k−1) carrier frequencies to which said first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which said fourth phases are assigned from 2^(k−1) carrier frequencies to which said third phases are assigned, carrier frequencies to which said third phases are assigned having the same carrier allocation as those of said first phases; calculating a code distance between each of said plurality of codes and a received code; and decoding said received code by determining an input signal that provides a code whose code distance to said received code is the smallest.
 10. A multicarrier encoder comprising: a subset selecting unit for determining, based on an input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1, and for assigning said plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which said second phases are assigned from 2^(k−1) carrier frequencies to which said first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which said fourth phases are assigned from 2^(k−1) carrier frequencies to which said third phases are assigned, carrier frequencies to which said third phases are assigned having the same carrier allocation as those of said first phases; and a subset mapping unit for mapping said phases assigned by said subset selecting unit to quadrature signals.
 11. A multicarrier encoder according to claim 10, further comprising a subset reordering unit for reordering the assignment of said phases assigned by said subset selecting unit.
 12. A multicarrier decoder comprising: an encoding unit both for determining, based on each input signal, a plurality of phases containing one or more kernels each consisting of first to fourth phases that satisfy a phase condition that an absolute value of difference of a phase difference Δθ(2^(k)), between 2^(k−1) second phases and 2^(k−1) first phases, from a phase difference Δθ*(2^(k)), between 2^(k−1) fourth phases and 2^(k−1) third phases, |Δθ(2^(k))−Δθ*(2^(k))|, be equal to a given value, where k is an integer not smaller than 1, and for generating a plurality of codes corresponding to said signal input by assigning said plurality of phases to a plurality of carrier frequencies in such a manner as to satisfy a carrier allocation that a difference of 2^(k−1) carrier frequencies to which said second phases are assigned from 2^(k−1) carrier frequencies to which said first phases are assigned be equal to a difference of 2^(k−1) carrier frequencies to which said fourth phases are assigned from 2^(k−1) carrier frequencies to which said third phases are assigned, carrier frequencies to which said third phases are assigned having the same carrier allocation as those of said first phases; a code distance calculating unit for calculating a code distance between each of said plurality of codes and a received code; and a smallest-distance code selecting unit for decoding said received code by determining an input signal that provides a code whose code distance to said received code is the smallest. 